#ifndef CABECERALISTAINVERTIDA_H_
#define CABECERALISTAINVERTIDA_H_

#include "../../BloqArch/IHeader.h"
#include <vector>


class CabeceraListaInvertida: public IHeader {
	private:
		std::vector<char> lEspacioLibre;

	public:
		CabeceraListaInvertida();
		virtual ~CabeceraListaInvertida();

		// Para usar el control de espacio utilizado
		void actualizarEspacioBloque(unsigned int pos, char espacioLibre);

		// IHeader
		unsigned int getPosBloqueLibre();
		void liberarBloque(const unsigned int pos);

		// IBloque
		unsigned int getSize() const;
		unsigned int serialize(char* &arr);
		void deSerialize(char* arr);
};

#endif /* CABECERALISTAINVERTIDA_H_ */
